Embedding a pattern in output content, such as printed output, is performed for a variety of reasons. For example, security features and anti-counterfeiting patterns, such as watermarks, are used to establish the authenticity of a printed output and to provide anti-copying protection. Alternatively, data bearing patterns such as matrix codes (e.g. barcodes, QR codes and the like) and data-bearing halftones are used to embed data into a printed output.